package com.ruoyi.settled.domain;

import java.math.BigDecimal;
import java.util.List;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 成本核算对象 sales_order_cost
 * 
 * @author huangchen
 * @date 2025-03-14
 */
public class SalesOrderCost extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 核算编码 */
    private Long costId;

    /** 销售订单编码 */
    @Excel(name = "销售订单编码")
    private String salesOrderCode;

    /** 销售运输费用 */
    @Excel(name = "销售运输费用")
    private BigDecimal shippingCost;

    /** 总成本 */
    @Excel(name = "总成本")
    private BigDecimal totalCost;

    /** 总利润 */
    @Excel(name = "总利润")
    private BigDecimal totalProfit;

    /** $table.subTable.functionName信息 */
    private List<ProductOrderCost> productOrderCostList;

    public void setCostId(Long costId) 
    {
        this.costId = costId;
    }

    public Long getCostId() 
    {
        return costId;
    }
    public void setSalesOrderCode(String salesOrderCode) 
    {
        this.salesOrderCode = salesOrderCode;
    }

    public String getSalesOrderCode() 
    {
        return salesOrderCode;
    }
    public void setShippingCost(BigDecimal shippingCost) 
    {
        this.shippingCost = shippingCost;
    }

    public BigDecimal getShippingCost() 
    {
        return shippingCost;
    }
    public void setTotalCost(BigDecimal totalCost) 
    {
        this.totalCost = totalCost;
    }

    public BigDecimal getTotalCost() 
    {
        return totalCost;
    }
    public void setTotalProfit(BigDecimal totalProfit) 
    {
        this.totalProfit = totalProfit;
    }

    public BigDecimal getTotalProfit() 
    {
        return totalProfit;
    }

    public List<ProductOrderCost> getProductOrderCostList()
    {
        return productOrderCostList;
    }

    public void setProductOrderCostList(List<ProductOrderCost> productOrderCostList)
    {
        this.productOrderCostList = productOrderCostList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("costId", getCostId())
            .append("salesOrderCode", getSalesOrderCode())
            .append("shippingCost", getShippingCost())
            .append("totalCost", getTotalCost())
            .append("totalProfit", getTotalProfit())
            .append("productOrderCostList", getProductOrderCostList())
            .toString();
    }
}
